.nacho-ellipsis-animation {
  $container-width: 70px;
  min-width: $container-width;
  height: 100%;

  &__ellipsis {
    $ellipsis-height: 15px;
    margin-left: -25px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: left;
    min-height: $ellipsis-height;
    height: 100%;
  }

  &__circle {
    position: relative;
    margin-left: 25px;
    animation: pendulum 2.5s infinite;
  }

  &__circle + &__circle {
    margin-left: -25px;
    animation: pendulum 2.5s 0.2s infinite;
  }
  &__circle + &__circle + &__circle {
    margin-left: -25px;
    animation: pendulum 2.5s 0.4s infinite;
  }
}

@keyframes pendulum {
  0%,
  20% {
    width: 4px;
    height: 4px;
    border-radius: 2px;
    left: 0;
    background-color: rgba(0, 0, 0, 0);
  }

  30%,
  70% {
    width: 8px;
    height: 8px;
    border-radius: 4px;
    left: 50%;
    background-color: rgba(0, 0, 0, 0.5);
  }

  80%,
  100% {
    width: 4px;
    height: 4px;
    border-radius: 2px;
    left: 100%;
    background-color: rgba(0, 0, 0, 0);
  }
}
